package com.stardata.liangshisq.tcslmon.service;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.IService;
import com.stardata.liangshisq.tcslmon.entity.UserToken;
import org.jetbrains.annotations.NotNull;

import java.util.Map;

/**
 * @author samson shu
 */
@DS("canyin")
public interface TokenService extends IService<UserToken> {
    /**
     * 根据token字符串查询TokenVo对象
     * @param token 令牌字符串
     * @return TokenVo 实体对象
     */
    UserToken getByToken(@NotNull String token);

    /**
     * 根据用户 UserId 创建token令牌字符串及其过期时间
     * @param userId 用户ID
     * @return Map对象，存放token令牌字符串和过期时间
     */
    Map<String, Object> createToken(@NotNull Long userId);
}
